home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d20 / bsrc_250.arc / MKMSCDOS.ARC / BINKLEY.MAK next >
Text File  |  1991-09-16  |  19KB  |  336 lines

  1. #--------------------------------------------------------------------------#
  2. #                                                                          #
  3. #                                                                          #
  4. #      ------------         Bit-Bucket Software, Co.                       #
  5. #      \ 10001101 /         Writers and Distributors of                    #
  6. #       \ 011110 /          Freely Available<tm> Software.                 #
  7. #        \ 1011 /                                                          #
  8. #         ------                                                           #
  9. #                                                                          #
  10. #  (C) Copyright 1987-91, Bit Bucket Software Co., a Delaware Corporation. #
  11. #                                                                          #
  12. #                                                                          #
  13. #            Makefile for BinkleyTerm (Microsoft NMAKE version)            #
  14. #                                                                          #
  15. #                                                                          #
  16. #                       BinkleyTerm Licensing Terms                        #
  17. #                                                                          #
  18. #                                                                          #
  19. # (C) Copyright 1987-91 Bit Bucket Software Co., a Delaware Corporation.   #
  20. # ALL RIGHTS RESERVED. COMMERCIAL DISTRIBUTION AND/OR USE PROHIBITED       #
  21. # WITHOUT WRITTEN PERMISSION FROM BIT BUCKET SOFTWARE CO.                  #
  22. #                                                                          #
  23. # Non-Commercial distribution and/or use is permitted under the following  #
  24. # terms:                                                                   #
  25. #                                                                          #
  26. #                                                                          #
  27. # 1. You may copy and distribute verbatim copies of BinkleyTerm source,    #
  28. # documentation, and executable code as you receive it, in any medium,     #
  29. # provided that you conspicuously and appropriately publish on each copy a #
  30. # valid copyright notice "(C) Copyright 1987-91, Bit Bucket Software Co."; #
  31. # keep intact the notices on all files that refer to this License          #
  32. # Agreement and to the absence of any warranty;  PROVIDE UNMODIFIED COPIES #
  33. # OF THE DOCUMENTATION AS PROVIDED WITH THE PROGRAM; and give any other    #
  34. # recipients of the BinkleyTerm program a copy of this License Agreement   #
  35. # along with the program.  You may charge a distribution fee for the       #
  36. # physical act of transferring a copy, but no more than is necessary to    #
  37. # recover your actual costs incurred in the transfer. Under no             #
  38. # circumstances is BinkleyTerm to be distributed in such a way as to be    #
  39. # construed as "value added" in a sales transaction, such as, but not      #
  40. # limited to, software bundled with a modem or CD-ROM software             #
  41. # collections.                                                             #
  42. #                                                                          #
  43. # 2. You may modify your copy or copies of BinkleyTerm or any portion of   #
  44. # it, and copy and distribute such modifications under the terms of        #
  45. # Paragraph 1 above, provided that you also do the following:              #
  46. #                                                                          #
  47. #     a) cause the modified files to carry prominent notices stating       #
  48. #     that you changed the files and the date of any change;               #
  49. #                                                                          #
  50. #     b) cause the executable code of such modified version to clearly     #
  51. #     identify itself as such in the course of its normal operation;       #
  52. #                                                                          #
  53. #     c) if the modified version is not a "port", but operates in the      #
  54. #     same hardware and/or software environment as the original            #
  55. #     distribution, make the original version equally available,           #
  56. #     clearly identifying same as the original, unmodified version;        #
  57. #                                                                          #
  58. #     d) cause the whole of any work that you distribute or publish,       #
  59. #     that in whole or in part contains or is a derivative of              #
  60. #     BinkleyTerm or any part thereof, to be licensed at no charge to      #
  61. #     all third parties on terms identical to those contained in this      #
  62. #     License Agreement (except that you may choose to grant more          #
  63. #     extensive warranty protection to some or all third parties, at       #
  64. #     your option); and                                                    #
  65. #                                                                          #
  66. #     e) send the complete source code modifications to Bit Bucket         #
  67. #     Software Co. at one of the addresses listed below,  for the          #
  68. #     purpose of evaluation for inclusion in future releases of            #
  69. #     BinkleyTerm.  Should your source code be included in BinkleyTerm,    #
  70. #     Bit Bucket Software Co. retains all rights for redistribution of     #
  71. #     the code as part of BinkleyTerm and all derivative works, with       #
  72. #     appropriate credit given to the author of the modification.          #
  73. #                                                                          #
  74. #     f) You may charge a distribution fee for the physical act of         #
  75. #     transferring a copy, but no more than is necessary to recover        #
  76. #     your actual costs incurred in the transfer, and you may at your      #
  77. #     option offer warranty protection in exchange for a fee.              #
  78. #                                                                          #
  79. # 3. Mere aggregation of another unrelated program with this program and   #
  80. # documentation (or derivative works) on a volume of a storage or          #
  81. # distribution medium does not bring the other program under the scope of  #
  82. # these terms.                                                             #
  83. #                                                                          #
  84. # 4. You may copy and distribute BinkleyTerm and its associated            #
  85. # documentation (or a portion or derivative of it, under Paragraph 2) in   #
  86. # object code or executable form under the terms of Paragraphs 1 and 2     #
  87. # above provided that you also do one of the following:                    #
  88. #                                                                          #
  89. #     a) accompany it with the complete corresponding machine-readable     #
  90. #     source code, which must be distributed under the terms of            #
  91. #     Paragraphs 1 and 2 above; or,                                        #
  92. #                                                                          #
  93. #     b) accompany it with a written offer, valid for at least three       #
  94. #     years, to give any third party free (except for a nominal            #
  95. #     shipping charge) a complete machine-readable copy of the             #
  96. #     corresponding source code, to be distributed under the terms of      #
  97. #     Paragraphs 1 and 2 above; or,                                        #
  98. #                                                                          #
  99. #     c) accompany it with the information you received as to where        #
  100. #     the corresponding source code may be obtained.  (This                #
  101. #     alternative is allowed only for noncommercial distribution and       #
  102. #     only if you received the program in object code or executable        #
  103. #     form alone.)                                                         #
  104. #                                                                          #
  105. # For an executable file, complete source code means all the source code   #
  106. # for all modules it contains; but, as a special exception, it need not    #
  107. # include source code for modules which are standard libraries that        #
  108. # accompany the operating system on which the executable file runs.        #
  109. #                                                                          #
  110. # 5. You may not copy, sublicense, distribute or transfer BinkleyTerm and  #
  111. # its associated documentation  except as expressly provided under this    #
  112. # License Agreement.  Any attempt otherwise to copy, sublicense,           #
  113. # distribute or transfer BinkleyTerm is void and your rights to use the    #
  114. # program under this License agreement shall be automatically terminated.  #
  115. # However, parties who have received computer software programs from you   #
  116. # with this License Agreement will not have their licenses terminated so   #
  117. # long as such parties remain in full compliance, and notify Bit Bucket    #
  118. # Software Co. of their intention to comply with this Agreement.           #
  119. #                                                                          #
  120. # 6. If you wish to incorporate parts of BinkleyTerm into other free       #
  121. # programs whose distribution conditions are different, please contact     #
  122. # Bit Bucket Software Co. at one of the addresses listed below.  We have   #
  123. # not yet worked out a simple rule that can be stated here, but we will    #
  124. # usually permit this.  We will be guided by the two goals of preserving   #
  125. # the free status of all derivatives of our free software (as it pertains  #
  126. # to Non-Commercial use as provided by this Agreement) and of promoting    #
  127. # the sharing and reuse of software.                                       #
  128. #                                                                          #
  129. # 7. For the purposes of this document, "COMMERCIAL USE" is defined as     #
  130. # operation of the software on four or more computers or data lines owned  #
  131. # by the same for-profit organization. Any organization may operate this   #
  132. # software under the terms of this Non-Commercial Agreement if operation   #
  133. # is limited to three or less computers or data lines.                     #
  134. #                                                                          #
  135. #                                                                          #
  136. #                                NO WARRANTY                               #
  137. #                                                                          #
  138. # BECAUSE BINKLEYTERM IS LICENSED FREE OF CHARGE, WE PROVIDE ABSOLUTELY NO #
  139. # WARRANTY.  EXCEPT WHEN OTHERWISE STATED IN WRITING, BIT BUCKET SOFTWARE  #
  140. # CO. AND/OR OTHER PARTIES PROVIDE BINKLEYTERM "AS IS" WITHOUT WARRANTY OF #
  141. # ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,    #
  142. # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR   #
  143. # PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF           #
  144. # BINKLEYTERM, AND THE ACCURACY OF ITS ASSOCIATED DOCUMENTATION, IS WITH   #
  145. # YOU.  SHOULD BINKLEYTERM OR ITS ASSOCIATED DOCUMENTATION PROVE           #
  146. # DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR     #
  147. # CORRECTION.                                                              #
  148. #                                                                          #
  149. # IN NO EVENT WILL BIT BUCKET SOFTWARE CO. BE RESPONSIBLE IN ANY WAY FOR   #
  150. # THE BEHAVIOR OF MODIFIED VERSIONS OF BINKLEYTERM. IN NO EVENT WILL       #
  151. # BIT BUCKET SOFTWARE CO. AND/OR ANY OTHER PARTY WHO MAY MODIFY AND        #
  152. # REDISTRIBUTE BINKLEYTERM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR        #
  153. # DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR OTHER SPECIAL,      #
  154. # INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY  #
  155. # TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED #
  156. # INACCURATE OR LOSSES SUSTAINED BY THIRD PARTIES OR A FAILURE OF THE      #
  157. # PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS) BINKLEYTERM, EVEN IF YOU     #
  158. # HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM   #
  159. # BY ANY OTHER PARTY.                                                      #
  160. #                                                                          #
  161. #                                                                          #
  162. # You can contact Bit Bucket Software Co. at any one of the following      #
  163. # addresses:                                                               #
  164. #                                                                          #
  165. # Bit Bucket Software Co.        FidoNet  1:104/501, 1:343/491             #
  166. # P.O. Box 460398                AlterNet 7:491/0                          #
  167. # Aurora, CO 80046               BBS-Net  86:2030/1                        #
  168. #                                Internet f491.n343.z1.fidonet.org         #
  169. #                                                                          #
  170. #                                                                          #
  171. # Please feel free to contact us at any time to share your comments about  #
  172. # our software and/or licensing policies.                                  #
  173. #                                                                          #
  174. # Our thanks to Richard Stallman and the Free Software Foundation, Inc.,   #
  175. # for most of the wording of this License.                                 #
  176. #                                                                          #
  177. #--------------------------------------------------------------------------#
  178.  
  179. #
  180. # Definitions
  181. #
  182.  
  183. PROJ = BINKLEY
  184. PROJFILE = BINKLEY.MAK
  185.  
  186. SRC_DIR  = ..\src
  187. INCL_DIR = ..\include
  188.  
  189. CC  = cl
  190. ASM = masm
  191.  
  192. LINKER = link
  193. LRF  = echo > NUL
  194.  
  195. #
  196. # Default C Compiler flags: 
  197. # Compile only, Medium Model,
  198. # Optimize for speed, only one return per function, No stack checking,
  199. # Pack structures, Include CodeView symbols, Maximum Warning Level
  200. #
  201. # Important point: for MSC 4.0, instead of -Oslern, use -Ot
  202. #                  for MSC 5.0,                     use -Os 
  203. #                  for MSC 5.1,                     use -Oxrn
  204. #                  for MSC 6.0a,                    use -Olerg
  205. #
  206. # The following is for MSC 6.0a
  207. CFLAGS = -c -Lr -EM -AL -Olerg -Gs -Zp -Zi -W4 -I $(INCL_DIR)
  208.  
  209. #
  210. # Object files that MSC (4.0, 5.0 or 5.1) is responsible for generating:
  211. #
  212.  
  213. # First those for the main BinkleyTerm module
  214. #
  215. COBJS = bt.obj       btconfig.obj langload.obj timer.obj    misc.obj     \
  216.         b_help.obj   file_dos.obj dosfuncs.obj keymap.obj   b_today.obj  \
  217.         mdm_proc.obj b_script.obj b_fuser.obj  nodeproc.obj version7.obj \
  218.     b_proto.obj  b_bbs.obj    b_search.obj b_sessio.obj recvbark.obj \
  219.     yoohoo.obj   b_wazoo.obj  b_wzsend.obj ftsc.obj     mailer.obj   \
  220.     sendbark.obj sched.obj    fossil.obj   b_passwo.obj b_frproc.obj \
  221.     zreceive.obj zsend.obj    zmisc.obj    sendsync.obj recvsync.obj \
  222.         data.obj     vfossil.obj  b_termov.obj b_banner.obj b_initva.obj \
  223.         b_sbinit.obj b_flofil.obj mailovly.obj evtparse.obj b_whack.obj  \
  224.     sb_box.obj   sb_fill.obj  sb_init.obj  sb_move.obj  sb_new.obj   \
  225.     sb_put.obj   sb_read.obj  sb_scrl.obj  sb_show.obj  sb_write.obj \
  226.     sb_popup.obj sb_save.obj  b_spawn.obj  b_rspfil.obj b_term.obj   \
  227.     xmsend.obj   m7send.obj   bsend.obj    brec.obj     xmrec.obj    \
  228.     m7rec.obj    janus.obj    statetbl.obj outbound.obj overlay.obj  \
  229.         mailroot.obj upload.obj   download.obj
  230.  
  231. # Next those for BTCTL, the program that makes a dummy OMMM CTL file
  232. #
  233. COBJ1 = btctl.obj
  234.  
  235. # Then those for BTLNG, Bink's language compiler
  236. COBJ2 = btlng.obj get_lang.obj put_lang.obj
  237.  
  238. #
  239. # Object files that MASM (4.0, 5.0 or 5.1) is responsible for generating
  240. #
  241. MOBJS = spawn.obj bink_asm.obj
  242.  
  243. #
  244. # Dependency list for regular and debug version, and LINK
  245. # command lines
  246. #
  247.  
  248. all:    english.bxt bt.exe btctl.exe btlng.exe
  249.  
  250. bt.exe: $(COBJS) $(MOBJS)
  251.     $(LRF) @<<$(PROJ).lrf
  252. /EXEPACK bt.obj+b_term.obj+
  253. timer.obj+misc.obj+file_dos.obj+keymap.obj+
  254. mdm_proc.obj+nodeproc.obj+version7.obj+b_wzsend.obj+
  255. b_sessio.obj+b_wazoo.obj+b_spawn.obj+spawn.obj+
  256. ftsc.obj+mailer.obj+mailroot.obj+b_today.obj+
  257. fossil.obj+b_frproc.obj+b_flofil.obj+
  258. sb_fill.obj+sb_move.obj+sb_popup.obj+
  259. sb_put.obj+sb_scrl.obj+sb_show.obj+sb_write.obj+
  260. bink_asm.obj+
  261. dosfuncs.obj+data+vfossil.obj+statetbl.obj+overlay.obj+
  262. (xmsend.obj+m7send.obj+bsend.obj+recvbark.obj)+
  263. (xmrec.obj+m7rec.obj+brec.obj+sendbark.obj)+
  264. (sched.obj+b_bbs.obj+b_banner.obj+b_help.obj+
  265. mailovly.obj+b_rspfil.obj)+
  266. (langload.obj+btconfig.obj+evtparse.obj)+
  267. (b_termov.obj+b_script.obj+b_proto.obj+upload.obj+download.obj)+
  268. (yoohoo.obj+b_whack.obj+
  269. b_passwo.obj+sendsync.obj+recvsync.obj)+
  270. (zreceive.obj+zsend.obj+zmisc.obj)+
  271. (janus.obj)+
  272. (b_initva.obj+b_sbinit.obj+sb_box.obj+sb_init.obj+sb_new.obj+
  273. b_search.obj+b_fuser.obj+outbound.obj+sb_read.obj+sb_save.obj),
  274. $*/STACK:4000,$*/MAP/LI;
  275. <<
  276.     $(LINKER) @$(PROJ).lrf
  277.  
  278. btbig.exe: $(COBJS) $(MOBJS)
  279.     $(LRF) @<<$(PROJ).lrf
  280. /EXEPACK $(COBJS: = +^
  281. ) +
  282. $(MOBJS: = +^
  283. )
  284. $*/STACK:4000
  285. $*/MAP/LI;
  286. <<
  287.     $(LINKER) @$(PROJ).lrf
  288.  
  289. english.bxt : btlng.exe $(SRC_DIR)\english.txt
  290.     btlng $(SRC_DIR)\english.txt english.bxt
  291.  
  292. bt-dbg.exe: $(COBJS) $(MOBJS)
  293.     $(LRF) @<<$(PROJ).lrf
  294. /CODEVIEW $(COBJS: = +^
  295. ) +
  296. $(MOBJS: = +^
  297. )
  298. $*/STACK:4000
  299. $*/MAP/LI;
  300. <<
  301.     $(LINKER) @$(PROJ).lrf
  302.  
  303. btctl.exe: $(COBJ1)
  304.     link /EXEPACK $(COBJ1), $*/stack:3000,$*/map/li;
  305.  
  306. btlng.exe: $(COBJ2)
  307.     link /EXEPACK $(COBJ2), $*/stack:3000,$*/map/li;
  308.  
  309. #
  310. # Dependencies for .C files and compiler line to generate 'em.
  311. #
  312. $(COBJS): $(SRC_DIR)\$*.c $(INCL_DIR)\com.h $(INCL_DIR)\xfer.h $(INCL_DIR)\bink.h
  313.     $(CC) $(CFLAGS) $(SRC_DIR)\$*.c
  314.  
  315. $(COBJ1): $(SRC_DIR)\$*.c $(INCL_DIR)\com.h $(INCL_DIR)\xfer.h $(INCL_DIR)\bink.h
  316.     $(CC) $(CFLAGS) $(SRC_DIR)\$*.c
  317.  
  318. $(COBJ2): $(SRC_DIR)\$*.c $(INCL_DIR)\language.h
  319.     $(CC) $(CFLAGS) $(SRC_DIR)\$*.c
  320. #
  321. # Modules with special includes here
  322. #
  323. langload.obj: $(INCL_DIR)\msgs.h
  324.  
  325. #
  326. # Dependencies for .ASM files and compiler line to generate 'em.
  327. #
  328. # Important point: for MASM 4.0, leave out the -Zi switch.
  329. #
  330. # For MASM 4.0, leave out the -Zi switch.
  331. # For TASM 1.0, use /zi instead of -Zi
  332. #
  333.  
  334. $(MOBJS): $(SRC_DIR)\$*.asm
  335.     $(ASM) -Zi -DMODL=LARGE $(SRC_DIR)\$*;
  336.